//
//  LBDatePickerView.h
//  app
//
//  Created by 赵辉 on 16/7/12.
//  Copyright © 2016年 广东联结电子商务有限公司. All rights reserved.
//

#import <UIKit/UIKit.h>

typedef void (^lbDatePickerViewDateChoseBlock)(NSDate *choseDate);

typedef NS_ENUM(NSInteger,LBDatePickerViewMaxLimitType) {
    LBDatePickerViewLimitTypeMaxNoLimit = 1,//最大时间无限制
    LBDatePickerViewLimitTypeMaxOverOneMonth = 2,//最大超过当前一个月
    LBDatePickerViewLimitTypeMaxCurrentTime = 3,//最大为当前时间
};

typedef NS_ENUM(NSInteger,LBDatePickerViewMinLimitType) {
    LBDatePickerViewMinLimitTypeMinDefault = 0,//默认最低时限1970
    LBDatePickerViewMinLimitTypeMinNoLimit = 1,//无限制
    LBDatePickerViewMinLimitTypeMinNextDay = 2,//最小时间为当前日期的下一天
    LBDatePickerViewMinLimitTypeMinCurrentTime = 3, //最小时间为今天

};

@interface LBDatePickerView : UIControl
/**
*  时间选择
*
*  @param animation      是否动画
*  @param pickerModel    时间选择模版
*  @param isLimitMaxTime 是否限制展示最大时间 default NO:no limit
*  @param choseBlock     choseBlock description
*/
+ (void)showDataPickerByAnimation:(BOOL)animation
                 UIDatePickerMode:(UIDatePickerMode)pickerModel
                   isLimitMaxTime:(BOOL)isLimitMaxTime
                         Complete:(lbDatePickerViewDateChoseBlock)choseBlock;
/**
 *  时间选择
 *
 *  @param animation    是否动画
 *  @param pickerModel  时间选择模版
 *  @param maxLimitType 最大时间限制类型
 *  @param minLimitType 最小时间限制类型
 *  @param choseBlock   choseBlock description
 */
+ (void)showDataPickerByAnimation:(BOOL)animation
                 UIDatePickerMode:(UIDatePickerMode)pickerModel
     LBDatePickerViewMaxLimitType:(LBDatePickerViewMaxLimitType)maxLimitType
     LBDatePickerViewMinLimitType:(LBDatePickerViewMinLimitType)minLimitType
                         Complete:(lbDatePickerViewDateChoseBlock)choseBlock;

/**
 *  时间选择
 *
 *  @param animation    是否动画
 *  @param pickerModel  时间选择模版
 *  @param maxLimitType 最大时间(无则为nil)
 *  @param minLimitType 最小时间(无则为nil)
 *  @param choseBlock   choseBlock description
 */
+ (void)showDataPickerByAnimation:(BOOL)animation
                 UIDatePickerMode:(UIDatePickerMode)pickerModel
     LBDatePickerViewMaxLimitDate:(NSDate *)maxLimitDate
     LBDatePickerViewMinLimitDate:(NSDate *)minLimitDate
                         Complete:(lbDatePickerViewDateChoseBlock)choseBlock;


@end
